Methods of providing arbitrary media during multimedia telecommunication (a multimedia “call”) between equipment (“terminals”). More particularly, the invention provides methods for introducing arbitrary media during calls between terminals that implement channel-based telecommunications protocols such as the Internet Engineering Task Force (IETF) Session Initiation Protocol (SIP), the International Telecommunication Union (ITU) Telecommunication Standardisation Sector (ITU-T) H.323 Recommendation, the ITU-T H.324 Recommendation and other Standards and Recommendations derived from or related to these. More specifically, it relates to a method and apparatus of providing configurable and interactive media at various stages of a communication session in channel-based media telecommunication protocols with media supplied into channels of involved terminals based on preferences of an operator, originator and receiver. Merely by way of example, the invention has been applied to the establishment of multimedia telecommunication between the 3GPP 3G-324M (protocol adapted from the ITU-T H.324 protocol) multimedia handsets on a mobile telecommunications network, but it would be recognized that the invention may also include other applications.
H.324 is an International Telecommunication Union (ITU) protocol standard for multimedia communication over general switched telephone networks (GSTN). H.324M is the name commonly used for the H.324 with Annex C (mobile extensions) and is an extension of H.324 for operations over mobile networks, and 3G-324M is a recommendation by the third generation partnership program (3GPP) defining adaptation of H.324M for use within 3GPP networks and also adopted by 3GPP2. 3GPP has also adapted IETF SIP for use in packet switched networks, this adaptation is called SIP/IMS.
Without any loss of generality we use the term “equipment” to indicate either a user end equipment such as a handset, or network end equipment such as a switch or gateway. The term “equipment” covers the meaning of “entity.” We also use the terms “equipment” and “terminal” interchangeably, and they both indicate the same meaning in the present document.
The key steps involved in setting up and connecting a typical 3G-324M call are as follows:                1. Call signaling (bearer establishment)—outside the scope of H.324. Normally a modem connection if GSTN, through ISDN, or signaling through mobile switching centres in the mobile case.        2. Mobile level detection (MLD)—Where a common Mobile Level is agreed on between equipments. This step is performed by H.324 equipment that supports mobile extensions such as H.324M and 3G-324M equipment.        3. Terminal Capability Exchange (TCS)—H.245 Messaging        4. Master Slave determination (MSD)—H.245 Messaging        5. Open/Close Logical Channels (OLC)—H.245 Messaging        6. Multiplexer Table Entries Exchange (MTE)—H.245 Messaging        
In Step (1) an end-to-end bearer between equipments is established. This stage is called Call Signaling. In a third Generation (3G) network, where 3G-324M is employed, a user terminal connects to another user terminal via network elements; network element to user terminal interactions make use of ITU-T Recommendation Q.931, network element to network element connections make use of Signaling System 7 (SS7) Integrated Systems Digital Network User Part (ISUP).
FIG. 1 illustrates a conventional connection architecture for MS-to-MS H.324 calls. As merely an example, in FIG. 1, a simplified depiction of network elements involved in a typical 3G-324M call between two terminals is shown. A terminal originating a call (TOC) 110, a terminal terminating a call (TTC) 190, a mobile switching centre (MSC) associated with a TOC (OMSC) 120 and an MSC associated with TTC (TMSC) 180. OMSC and TMSC may be collocated. A charging function is marked as CHARGING 150.
FIG. 2 illustrates conventional session establishment of a terminal originating call and a setup request to a terminal terminating call. A TOC 210 initiates call set-up procedure by sending a Q.931 SETUP message to OMSC 220. OMSC 220 sends an ISUP Initial Address Message (IAM) to TMSC 224. TMSC 224 sends a SETUP message to TTC 230 associated with the number dialled. The SETUP message informs TTC 230 of the incoming call. TTC 230 sends an ALERTING message to TMSC 224 indicating that ringing has started. TMSC 224 sends an ISUP Address Completed Message (ACM) to OMSC 220. OMSC 220 connects a ringing (ringback or alerting) tone to TOC 210 by sending an ALERTING message.
TTC 230 is ringing and may answer the call. The duration of the ringing period is variable and unknown to TOC 210 at time of call origination. Although a 3G-324M terminal has the ability to display audio and video, TOC 210 is receiving and playing back a conventional, audio only, ringback tone for the duration of the ringing period.
If TTC 230 answers, a CONNECT message is sent from TTC 230 to TMSC 224. TMSC 224 sends an ISUP Answer Message (ANM) to OMSC 220. OMSC 220 sends a CONNECT to TOC 210.
In a typical call, a charging event is sent from OMSC 220 to the charging entity (CHARGING 222) indicating the start of the session. Charging events can be operator defined and are likely to occur elsewhere in a session to provide accurate billing of network usage, in the network and from other elements to provide accurate billing of network usage.
The call signaling is now complete and a communication link, the bearer, now exists between TOC 210 and TTC 230. Once call signaling completes, further steps are used to establish the H.324 session, to provide a means of transporting video, audio and data between the equipment in a format that is known to and supported by the equipment. In order to do this, H.324M makes use of two further ITU-T Recommendations.
The first of these Recommendations is H.223 “Multiplexing protocol for low bit rate multimedia communication.” H.223 specifies a frame-oriented multiplexing protocol which allows the transfer of any combination of digital voice, video and data (e.g., command and control) information over a single communication link. The H.223 may have a number of modes of operation, specified in Annexes A, B and C of the H.223 Recommendation, that are intended to provide increased resilience in the presence of errors. These are also known as Mobile Levels 1, 2 and 3. H.223 without the application of any of these Annexes is also sometimes referred to as operating at Mobile Level 0 (base-line). H.324 has the concept of Logical Channels which is a way of providing virtual channels over the circuit switched link. The role of the multiplexer is to combine (multiplex) parts of the data chunks written on the logical channels into frames known as a Multiplexer Protocol Data Unit (MUX-PDU). Logical Channel 0 is always available and is used for Command and Control. Data (voice, video, command and control and other general data) is passed to/from the H.223 multiplexer through bitstream chunks called service data units (SDUs). Before being multiplexed, these different SDUs go through Adaptation Layers where extra information may be added for purposes such as error detection, sequence numbering and retransmission requests.
The second of these Recommendations is H.245 “Control protocol for multimedia communication,” which specifies the syntax and semantics of terminal information messages as well as procedures to use messaging for in-band negotiation at the start of or during communication. The messages cover receiving and transmitting capabilities and preferences, logical channel signaling and control and indication. The messages that are specified in H.245 are expressed in the ITU-T Abstract Syntax Notation (ASN.1) and can be classified as of Request, Response, Command or Indication type. H.245 messages are encoded according to the ASN.1 standard before being transmitted. When a terminal sends an H.245 message of type Request it requires that an appropriate message of type Response is sent by the remote terminal. If the Response (sometimes referred to as an Ack for Acknowledgement) is not received within a certain time, the sending terminal will re-transmit the Request or take another appropriate action if no response has been received for repeated Requests. Retransmission of requests may occur a number of times. Many of the H.245 messages associated with call setup are of the Request type.
H.245 also requires a reliable link layer for proper operation. The principal means of providing this, specified in Annex A of H.324, is to use the Simple Retransmission Protocol (SRP) or the Numbered Simple Retransmission Protocol (NSRP), in which one or more H.245 messages, known collectively as a MultimediaSystemControl PDU and in the present document as an H.245 PDU, are formed into SRP Command Frames prior to sending, and the receiving terminal must send an SRP Response Frame (Sometimes referred to as an SRP Ack) to acknowledge correct receipt of an SRP Command Frame. No further H.245 messages may be sent by a terminal until the SRP Ack for the last message has been received.
Step (2) is H.223 mobile level detection/multiplexer synchronization phase. This consists of each terminal transmitting a repeating pattern of bits (flags) that indicate the highest Mobile Level that it operates at. Each terminal examines the flags that it is receiving. If these flags represent a lower Mobile Level then the terminal drops down to the same lower level. When both terminals are transmitting the same flag sequence this step completes.
Steps (3) to (6) are performed using a sequence of H.245 Request and Response messages as described above. Note the order of steps (5) and (6) above can be interchanged. It should be noted that Steps (3) to (6) relate to procedures that are defined by underlying state machines that are also known as Signaling Entities. The relevant signaling entities are:
1. Capability Exchange Signaling Entity (CESE)
2. Master Slave Determination Signaling Entity (MSDSE)
3. Logical Channel Signaling Entity (LCSE)
4. Multiplex Table Signaling Entity (MTSE)
However, in order to establish an H.324 session with logical channels in each direction, the key steps above are often handled sequentially.
The ITU Recommendation H.323 uses H.245 in a similar manner to H.324 for signaling command, control and indication messages related to a call. IETF Session Initiation Protocol (SIP) uses a different method, Session Description Protocol (SDP), for establishment of terminal capabilities and logical channels.
For H.324M, Step (3), Terminal Capabilities Set request (TCS) step requires the terminal capabilities are exchanged via independent Terminal Capability Set (TCS) requests. These allow the signaling of the terminals supported capabilities including multiplexer capability, supported codecs and parameters associated with the codecs. TCS also specify other terminal limitations on simultaneity of reception of specific codec types, or interdependence between codec types for simultaneous transmit and receive.
For H.324M, Step (4), the master slave relationship (MS) is determined by dependent Master Slave Determination (MSD) requests. After a master is decided it then takes responsibility for resolving incompatible requests between the terminals.
For H.324M, Step (5), Open Logical Channel (OLCs) are used to create logical channels (LC) as a path for the transmission of information. A logical channel is opened by a terminal wishing to send media by the Open Logical Channel (OLC) request. Each logical channel has characteristics that are specified in the OLC request. These characteristics ensure a terminal is capable of receiving and decoding data that will be received on the channel. Logical channels may be opened as bidirectional channels, where a forward and a reverse channel are created simultaneously. OLCs are acknowledged by the receiving terminal.
For H.324M, Step (6), the Multiplexer Table Entries (MTEs) indicate to the remote terminal how the transmitting terminal intends to format the media payload. MTEs are acknowledged by the receiving terminal.
Once these steps have completed, media (video, audio and data) can flow between the terminals. Session media flowing in logical channels is indicated by “SessMedia” in the Figures. Note the H.245 messages flow on the Logical Channel 0 which as previously described is predefined and carried by the means of the multiplexer predefined Multiplex Table Entry 0. Once other Multiplex Table Entries have been exchanged these can also be used in conjunction with H.245 messages.
Session characteristics pertaining to logical channel characteristics for 3G-324M are shown in Table 2. The modification of some session characteristics is allowed during a session in 3G-324M, allowed modifications and methods are indicated in Table 1.
TABLE 1Decision atModification duringCharacteristicsession setupsessionMobile level (ML)Mobile levelH.245 negotiationdetectionand ML detectionTerminal capabilities (TCS)H.245 negotiationH.245 negotiationMaster-Slave relationship (MS)H.245 negotiationNot allowedMultiplexer table entriesH.245 negotiationH.245 negotiation(MTE)Logical Channels (LC)H.245 negotiationH.245 negotiation
TABLE 2CharacteristicRelevant informationLogical channel number (LCN)—Type of channel—Adaptation layer—Segmentable—
Fast setup technologies, for example H.323 fastconnect, H.324 answerfast and related techniques (described more fully in U.S. Patent Application Publication Nos. 2004/0174817 and 2006/0029041, both of which are commonly assigned, and incorporated herein by reference for all purposes), SIP answer/offer, and SIP “early media”, and the like, may alter the negotiation process, but do not alter the resultant characteristics of a session. In some cases, the resultant characteristics may be limited to a reduced set of characteristics when compared to regular negotiation.
The closing of logical channels and the re-opening of logical channels, by H.245 Close Logical Channel (CLC) messages and (Open Logical Channel) OLC messages respectively, is allowed during the session.
The key steps involved in tearing down a typical 3G-324M call are as follows:
H1. Close Logical Channels (CLC)—H.245 Messaging.
H2. End of Session Command (EndSession)—H.245 Messaging.
H3. Call signaling (bearer release)—outside the scope of H.324.
Call teardown may happen in an orderly way, involving Steps (H1), (H2) and (H3), may just involve Step (H2) and (H3), may just involve just Step (H3), or may be caused by loss of communication. According to embodiments of the present invention, the terminal will handle any call teardown procedure gracefully.
By way of example, TOC 210 decides to terminate the session by terminating the bearer, i.e., Step (H3): Call signaling for call teardown, without sending H.245 messages. Step (H3) begins with TOC 210 sending a DISCONNECT message to OMSC 220. OMSC 220 signals an ISUP RELEASE to TOC 210. A charging event may be sent from OMSC 220 to CHARGING 222 indicating the end of the session for billing purposes.
OMSC 220 sends an ISUP RELEASE message to TMSC 224. TOC 210 sends a reply ISUP RELEASE_COMPLETE message to OMSC 220. TMSC 224 sends a return ISUP RELEASE_COMPLETE (RLC) message to OMSC 220, and a DISCONNECT message to TTC 230. TTC 230 sends a reply RELEASE message to TMSC 224. TMSC 224 replies to TTC 230 with a RELEASE_COMPLETE message. The call is now finished and all parties are returned to initial states ready to make new calls.
From the above, it is seen that in a 3G network, in spite of inherent terminal and network capabilities for multimedia display, when TOC 210 performs the steps described above, the media sent to TOC 210 from the network, as TTC 230 rings awaiting answer, is conventional audio (voice). Thus, there is a need in the art for methods and techniques for supplying multimedia content to terminals communicating through telecommunication protocols.